package static_;

public class StaticMethonDetail {
    public static void main(String[] args) {
        D.hi();//ok
        //非静态方法不能通过类名来调用
//        D.say();//err
        new D().say();
    }
}

class D {
    private int n1 = 100;
    private static int n2 = 200;

    public void say() { // 非静态方法
        //
    }

    public static void hi() { // 静态方法
        //
    }

    //1.类(静态)方法只能访问静态成员 或 静态方法
    //2.类方法不能使用 this 或 super
    public static void hello() {
        System.out.println(n2);
        System.out.println(D.n2);
//        System.out.println(this.n2); // err
        hi();//ok
//        say();//err
    }

    //3.普通成员方法，既可以访问非静态成员，也可以访问静态成员
    public void ok() {
        //非静态成员
        System.out.println(n1);
        say();
        //静态成员
        System.out.println(n2);
        hi();
    }
}